Method for the production of an open-loop control block and said control block

ABSTRACT

With a method for producing the control module, the control module is assembled from a number of program modules which are designed for one basic function in each case. Each program module has an interface of an interface type defined by the respective basic function. A functional connection is preferably only established between two program modules if the two program modules have mutually corresponding interfaces of the same interface type. The method permits simple, quick and in particular rule-based automatic production of the control module of a control system for controlling a plant component.

This application is the national phase under 35 U.S.C. § 371 of PCTInternational Application No. PCT/DE00/01526 which has an Internationalfiling date of May 15, 2000, which designated the United States ofAmerica, the entire contents of which are hereby incorporated byreference.

FIELD OF THE INVENTION

The invention generally relates to a method for producing a controlmodule of a control system for controlling a plant component and to acontrol module produced using the method.

BACKGROUND OF THE INVENTION

In an industrial plant, for example in a power generation plant,individual plant components are connected to one another by a controlsystem (process control system), in particular a digital control system.Such a plant component may be a valve or a motor for example. Anindividual plant component usually interacts here with a multiplicity ofother plant components, and its operating state is dependent on theoperating states of the other plant components. The control system isused to monitor the operating states, and the plant is controlledautomatically or manually. To operate the plant, it is necessary torecord the data of the various plant components and establish theinterrelationships between the data. Based on this data, a controlinstruction is then sent by the process control system to the respectiveplant component, either automatically or in response to a manual inputinstruction of the operator.

For the control of a plant component, a so-called control or functionmodule is usually employed in the control system to record theindividual data, evaluate it and if appropriate, forward it afterpreprocessing.

Owing to the manifold ways in which the plant components interact andthe resulting large volume of data, the control or function modules arevery large and complex. The greater their complexity, the more difficultit becomes to follow the internal function sequences of the individualcontrol module. Owing to the manifold interactions to be taken intoaccount, the creation of a control module is likewise highly complex,and consequently time-consuming. Moreover there is a risk of errorsarising during the design and programming of the control module whichare not detected.

Adapting an existing control module to a specific plant also requires amultiplicity of settings and parameter inputs. Only then can theexisting control module be integrated in the process control system ofthe specific plant. Users find it difficult to grasp the complexdependencies within the control module and its functions. As a result,modifying an existing control module is time-consuming and requires alot of effort. In addition, it is very difficult to predict the effectsof modifications to the control module, that is to say to specificcircuits or program flows. Moreover, the control module is often notused optimally, so that some of its functions remain unused. For themost part, control modules are intentionally equipped with a largenumber of functions to cover as many requirements as possible. Thisrequires a large amount of computing power, even if the multiplicity offunctions is not necessary for a specific plant.

Described in WO97/03389 is a method for creating a function plan inwhich inputs and outputs of modules displayed on the screen areconnected to one another by a user drawing lines. A program stored inthe computer then performs a plausibility check on the connectionsbetween the modules.

The disadvantage of this is that drawing lines is prone to errors andthe subsequent plausibility check is costly.

SUMMARY OF THE INVENTION

The object of the invention is to disclose a method for producing acontrol module in which the control module can be created as easily andwith as few defects as possible, and which has a structure that isreadily comprehensible to the user. A further object of the invention isto disclose a control module produced according to the method.

According to the invention, an object is achieved by a method forproducing a control module of a control system for controlling a plantcomponent. Preferably, the control module is assembled from a number ofprogram modules designed for one basic function in each case, and ofwhich each program module has an interface of an interface type clearlydefined by the respective basic function. More preferably, a firstprogram module having a first interface is assigned to a second programmodule having a second interface. A functional connection is thenpreferably established between the first program module and the secondprogram module if the first interface and the second interface are ofthe same interface type.

A first aspect of the underlying idea here is the breaking down of thecomplex overall functionality of the control module into individualelementary basic functions. Preferably, a separate program module isprovided for each of these individual basic functions. The modularstructure of the function sequences in the control module renders itsoverall structure very clear and readily comprehensible to a user.

A second aspect of the underlying idea here is the fact that eachprogram module has an interface clearly assigned to its basic function.The first program module is preferably only connected to the secondprogram module if the latter's interface is designed for interfacingwith the basic function of the first program module. A specificinterface which is clearly different from all other interfaces of theother basic functions is assigned to each basic function. This ensuresthat only program modules designed for a functional interconnection canbe connected to one another. When a user is assembling the controlmodule from the individual program modules, this consequently precludesthe possibility of errors resulting in a malfunctioning of the controlmodule. The control module can thus be easily created.

The creation or production of the control module is also understood hereto include any necessary modifications, for example, as a result ofplant-specific requirements for an already existing control module. Anadvantage of the method is conferred by the fact that it is possible tomake the necessary modifications simply by selecting the specificprogram module requiring modification. The program module may theneither be modified or replaced by a plant-specific program module.

For better clarity, the basic function of at least one of the programmodules is preferably assembled from a number of subfunctions. Forexample an “instruction generation” control module is provided in whichthe data arriving from various components is recorded, processed andevaluated. The subfunctions are expediently assigned to the differentcomponents.

It is particularly advantageous if the at least one program module hasthe same number of interfaces as the number of subfunctions, with eachindividual one of said interfaces being clearly defined by thesubfunction. The aforesaid “instruction generation” program module wouldaccordingly have a number of specific interfaces. For example, it has aninterface A′ for recording the data from a device A and a furtherinterface B′ for recording the data B from a device B. The data fromdevice A is preferably only transferred to the program module via theinterface of the type A′ provided for the data.

The functional connection between two program modules can therefore becompared to the joining of two jigsaw pieces: each piece of the jigsawhas a specific geometric shape having convexities and concavities withwhich only the respective matching piece can mate. It is not possible tojoin two jigsaw pieces that do not fit. A program module divided into aplurality of subfunctions is comparable to a jigsaw piece to which aplurality of other jigsaw pieces may be simultaneously connected. Theinterfaces of the program modules therefore represent the convexitiesand concavities on the technical programming level.

To enable the control module to be produced as simply and quickly aspossible, the individual program modules are preferably selected from alibrary. The library is, for example, a data store in which amultiplicity of program modules having different functions are stored.

In order wherever possible to equip the control module only with thefunctions required in the specific plant, the required functionality ofthe control module is specified, and the program modules required areselected on the basis of this specification.

The functionality is preferably specified by a user input, to be precisethe user is prompted to specify the functionality by using a queryroutine. For example a screen-driven dialog with the user is providedfor this purpose, in the course of which the user is questioned aboutthe plant components provided for the plant. The user enters thespecifications for the respective plant component in a correspondingdialog field.

The user input is preferably subjected to a plausibility check toprevent malfunctions occurring on the assembled control module. Ifrequired by the plausibility check, a program module which has a basicfunction essential for the functionality of the control module, butwhich was not specified by the user, is automatically selected.

In a particularly preferred embodiment, the control module is assembledfrom the program modules on the basis of predetermined rules, inparticular automatically assembled. For example, a first rule specifiesthat a program module M is automatically selected if a program module Nwas selected, or else that the program module M is excluded if programmodule N was selected. A second rule provides that, preferably, onlyinterfaces having compatible attributes are connected to one another.For example, the type and number of inputs and outputs of an interface,as well as the data format of the data to be exchanged between twoprogram modules, are compared when connecting two program modules. Athird rule provides, for example, that an input module, via which inputsare transferred to the control module, operates with an output modulevia which data is output from the control module. And a fourth rule mayinclude adherence to certain processing sequences of flow processesdetermined by causalities.

The program modules with their function-specific interfaces are a basisfor the assembly of the control module according to fixed rules. Inparticular they are highly advantageous for automatic assembly. Withautomatic assembly, the user need only enter the plant-specific data. Onthe basis of these inputs, the required overall functionality of thecontrol module is determined; the corresponding program modules areautomatically selected and assembled. The automatic production of thecontrol module offers considerable time savings in comparison withmanual production of the control module. Moreover, user-specific errorsare precluded.

Preferably at least the internal interfaces active only within thecontrol module are standardized so that data exchange between theprogram modules via said internal interfaces is not influenced bychanges to the internal program flow of a program module. The advantageof standardizing the interfaces is that any necessary plant-specificadaptations to individual program modules can be readily performed.There is no risk here that such modifications will have an adverseeffect on the functional interaction of the individual program modules.

In addition to internal interfaces, the control module also has externalinterfaces via which it is connected to external components, for exampleto another control module, to the plant component, or to a data line.

For external data exchange between the control module and the plantcomponent, a device-specific device module is preferably selected as theprogram module. In particular, the device module has a device-specificinterface; it is designed as a type of driver or communications modulewhich enables the control module to communicate with the plantcomponent.

To achieve an object associated with the control module, the controlmodule is produced in accordance with the method described above.Similar advantages and special embodiments that apply to the methodapply somewhat analogously to the control module.

BRIEF DESCRIPTION OF THE DRAWINGS

An exemplary embodiment of the invention is described in greater detailbelow with reference to the figures, in which, schematically in eachcase:

FIG. 1 shows a control module assembled from individual program modules,

FIG. 2 shows a technical arrangement of devices for carrying out themethod for producing the control module, and

FIG. 3 shows a greatly simplified block diagram of a plant.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

According to FIG. 1, a control module 1 has a plurality of programmodules P1 to P10 which are functionally interconnected. The controlmodule 1 is designed to control a plant component 2, for example for thedrive control of a motor. In the exemplary embodiment, the basicfunctions of the program modules P1, P2 and P3 are divided into aplurality of subfunctions which are indicated by dashed lines in eachcase. Only a single basic function is assigned in each case to theremaining program modules P4 to P10.

The program modules P1 to P3 have a plurality of interfaces and theprogram modules P4 to P10 have only one interface in each case. Thedesignation of the interfaces in FIG. 1 will be explained further below.The definition of the individual interfaces is defined by the specialbasic function or the subfunction of the program module. For thispurpose specific programming attributes are assigned to the interfaces,such as for example the type and number of inputs or outputs, the dataformat used for communication between the program modules P1 to P10, ora data address assigned to the program module.

The program module P1 has for example the function “priorities andinstruction generation” as its basic function. The basic function isdivided into a plurality of subfunctions. One of these serves to processoperator instructions. Assigned to the subfunction is an interface P1Aof the program module P1, via which the latter is connected to theprogram module P4 having the basic function “operator instructions”. Forthis the program module P4 has an interface P4A compatible with theinterface P1A. The two interfaces P4A and P1A have mutuallycorresponding attributes so that they are compatible with one another.

An interface type having attributes clearly defined by the respectivebasic function or subfunction is therefore assigned to each programmodule P1 to P10. The interface types, which can be clearlydistinguished from one another, are denoted by letters A to N in FIG. 1,with the same letter denoting the same interface type. Indicated here asinterfaces of the same interface type are interfaces having mutuallycorresponding attributes. A type A interface P1A of the program moduleP1 can therefore only have a functional connection with a correspondingtype A interface P4A of another program module, for example of theprogram module P4. The same applies to the program module P5 having thebasic function “automatic instructions”, by means of which instructionsautomatically triggered by the process control system are generated andoutput. The program module P5 has an interface P5B which is designed forthe functional connection with the corresponding interface P1B of theprogram module P1. Since the interface types A and B are different, theprogram module P5 cannot be connected to the interface PIA via itsinterface P5B. The same applies analogously to all further programmodules.

It is not necessary for a program module to be connected to eachinterface PIA to P1H of the program module P1. Depending on the overallfunctionality required for the control module 1, some subfunctions ofthe program module P1 can remain unused. In this case some interfaces,interfaces P1C and P1E in the exemplary embodiment, therefore remainunassigned. They are designed for example for communicating with anothercontrol module, and a program module designed for communication with thefurther control module can be subsequently connected to them without anyproblem. The interfaces P1C and P1E are therefore to be viewed asexternal interfaces that have no internal effect in the control module1.

The program module P6 has for example the basic function “protectioninstructions” which is used to process instructions for protecting theplant component. Like all other interfaces generally, the associatedtype D interface also has an output and an input. The program module P2has the basic function “storage” and serves to store instructions beforethey are output externally. Instructions are output here via the programmodule P7 having the basic function “instruction output”. For this thetwo program modules P2 and P7 are connected via the interfacecombination P2N-P7N. For controlling the plant component 2, the controlmodule 1 is connected via the program module P7 to said plant component2.

For this purpose, the program module P7 is designed in particular as adevice-specific device module. It therefore preprocesses theinstructions output by the program module P2 so that they can beexecuted by the plant component 2. Its interface P2N can therefore beviewed as an external interface to the specific device module. Thedevice module P7 thus provides for the communication between controlmodule 1 and plant component 2. If the plant component 2 is exchanged,the device module P7 need only be adapted to the new plant component 2,or the old device module P7 need only be replaced by a new one. Theinternal processes in the control module 1 remain unaffected by this.

The output of instructions via the device module P7 is preferably to adata bus 4. The instructions are transferred to the plant component 2over the data bus 4. The data bus 4 is designed, for example, as a fieldbus, through which various plant components 2 are connected to oneanother.

The program module P3 has the basic function “record messages”. Inaddition to recording messages from plant component 2, it also serves tomonitor the latter. It is connected to the program module P1 and to theprogram module P2 for data exchange. In addition it has interfaces P3K,P3L and P3M, via which it is connected to the program modules P8, P9 andP10 respectively. The program module P8 has for example the basicfunction “record acknowledgements”, and the program module P9 has thebasic function “record switchgear”. Accordingly, the acknowledgements,for example from the plant component 2, are processed via the programmodule P8. And in program module P9 the messages from a switchgear unit6 are processed. The program module P10 serves for example to monitorand control at least one pilot lamp 8 of an operating or control screen24 (cf. FIG. 3) visible to the operator. The program module P10 has thebasic function “lamps”.

The internal program flows of the individual program modules P1 to P10are self-contained and do not interact directly with the internalprogram flows of other program modules. The individual program modulesP1 to P10 can therefore be designated non-interacting. They communicatewith one another only via their standardized interfaces. Modification ofthe internal program flow of a program module P1 to P10 does not affectthe interface function.

With the method for producing the control module 1, the functionality ofthe control module 1 is preferably defined first. This is performed inparticular using a dialog or query routine with the user. According toFIG. 2, there is provided for this purpose a computer unit 10 which isconnected to an input device 12, a display device 14 and a data storeforming a library 16. Stored in the computer unit 10 is a query routine,in the course of which the user is questioned about the desiredfunctionality of the control module 1. For this, the user cancommunicate with the computer unit 10 via the display device 14, forexample via a screen, and via the input device 12, for example via akeyboard. Displayed on the display device 14 is a query or input screen,by means of which the user is prompted to enter and defineplant-specific features. The user enters the features via the inputdevice 12.

On the basis of the overall functionality of the control module 1determined from the user's inputs, the computer unit 10 automaticallyselects the necessary program modules from the library 16 and combinesthem on the basis of the rules likewise stored in the computer unit 10.The user's inputs are here subjected to a plausibility check. Thecomputer unit 10 is designed in such a way that it detects incorrect orinadequate inputs and reacts accordingly, for example with an errormessage or a repeated prompt. Program modules which are necessary forthe desired overall functionality of the control module 1, but whichwere not entered by the user, are also automatically selected from thelibrary 16 by the computer unit 10.

The library 16 includes a multiplicity of individual program modules fordifferent requirements, so that wherever possible the necessity ofprogramming a program module is dispensed with when producing a specialcontrol module 1 adapted to a specific plant component.

According to FIG. 3, a plant 18, for example a power generation plant,has a control console 20 and a number of plant components 2A, 2B, ofwhich only two are illustrated. The plant components 2A, 2B and thecontrol console 20 are connected to a control system 22 which has thecontrol module 1 for controlling one of the plant components 2A, 2B. Forthis purpose the control system 22 is connected to the plant components2A, 2B via a data bus 4. The control console 20 has an operating orcontrol screen 24 comprising a number of pilot lamps 8. The plant 18 canbe controlled and monitored from the control console 20.

It is preferred for the method for producing the control module 1 thatthe overall functionality of the control module 1 is divided into aplurality of basic functions and subfunctions. More preferably, eachbasic function is handled by one program module P1 to P10. The programmodules P1 to P10 have here in each case interfaces of differentinterface types A to N which are clearly defined by the basic functionsor subfunctions. The modular structure and the clearly definedinterfaces in particular enable the automatic rule-based production ofthe control module 1.

The invention being thus described, it will be obvious that the same maybe varied in many ways. Such variations are not to be regarded as adeparture from the spirit and scope of the invention, and all suchmodifications as would be obvious to one skilled in the art are intendedto be included within the scope of the following claims.

1. A method for generating a control module of a control system forcontrolling a plant component, comprising: assembling the control modulefrom at least two program modules, each designed for one respectivebasic function, wherein each program module includes an interface of aninterface type defined by the respective basic function; and assigning afirst program module including a first interface to a second programmodule including a second interface, wherein a functional connection isestablished between the first program module and the second programmodule if the first interface and the second interface are of the sameinterface type.
 2. The method as claimed in claim 1, wherein the basicfunction of at least one of the program modules is assembled from atleast two subfunctions.
 3. The method as claimed in claim 2, wherein theat least one program module includes an equal number of interfaces andsubfunctions.
 4. The method as claimed in claim 3, wherein at least oneof the program modules are selected from a library.
 5. The method asclaimed in claim 3, wherein a functionality of the control module isspecified, and wherein the control module selects the at least twoprogram modules on the basis of the specification of said functionality.6. The method as claimed in claim 3, wherein at least one program moduleincluding one of the basic functions “operator instructions”, “automaticinstructions”, “protection instructions”, “instruction generation”,“storage”, “instruction output”, “record messages”, and “lamps” isselected from the program modules.
 7. The method as claimed in claim 2,wherein at least one of the program modules are selected from a library.8. The method as claimed in claim 2, wherein a functionality of thecontrol module is specified, and wherein the control module selects theat least two program modules on the basis of the specification of saidfunctionality.
 9. The method as claimed in claim 2, wherein at least oneprogram module including one of the basic functions “operatorinstructions”, “automatic instructions”, “protection instructions”,“instruction generation”, “storage”, “instruction output”, “recordmessages”, and “lamps” is selected from the program modules.
 10. Themethod as claimed in claim 1, wherein at least one of the programmodules are selected from a library.
 11. The method as claimed in claim10, wherein at least one program module including one of the basicfunctions “operator instructions”, “automatic instructions”, “protectioninstructions”, “instruction generation”, “storage”, “instructionoutput”, “record messages”, and “lamps” is selected from the programmodules.
 12. The method as claimed in claim 1, wherein a functionalityof the control module is specified, and wherein the control moduleselects the at least two program modules on the basis of thespecification of said functionality.
 13. The method as claimed in claim5, wherein the functionality is specified by a user input.
 14. Themethod as claimed in claim 13, wherein the user input is subjected to aplausibility check, and wherein a program module includes a basicfunction used for the functionality of the control module, not specifiedby the user, and automatically selected.
 15. The method of claim 13,wherein the functionality is elicited from the user using a queryroutine.
 16. The method as claimed in claim 1, wherein the controlmodule is assembled from the program modules on the basis of rules. 17.The method of claim 16, wherein the control module is automaticallyassembled.
 18. The method as claimed in claim 1, wherein the internalinterfaces, active only within the control module, are standardized sothat data exchange between the program modules within the control moduleis not influenced by changes to the internal program flow of a programmodule.
 19. The method as claimed in claim 1, wherein for external dataexchange between the control module and the plant component, adevice-specific device module is selected as the program module.
 20. Themethod of claim 19, wherein the external data exchange is over a databus.
 21. The method as claimed in claim 1, wherein at least one programmodule including one of the basic functions “operator instructions”,“automatic instructions”, “protection instructions”, “instructiongeneration”, “storage”, “instruction output”, “record messages”, and“lamps” is selected from the program modules.
 22. The method as claimedin claim 1, wherein the at least one program module includes an equalnumber of interfaces and subfunctions.
 23. A control module of a controlsystem, for controlling a plant component, comprising: at least twoprogram modules, each designed for one respective basic function,wherein each program module includes an interface of an interface typedefined by the respective basic function, wherein a first program moduleincluding a first interface is assigned to a second program moduleincluding a second interface, and wherein a functional connection isestablished between the first program module and the second programmodule if the first interface and the second interface are of the sameinterface type.
 24. The control module as claimed in claim 23, whereinthe basic function of at least one of the program modules is assembledfrom at least two subfunctions.
 25. The control module as claimed inclaim 24, program module includes an equal number of interfaces andsubfunctions.
 26. The control module as claimed in claim 23, wherein theat least one program module includes an equal number of interfaces andsubfunctions.
 27. The control module as claimed in claim 23, programmodules are selected from a library.
 28. The method control module asclaimed in claim 27, wherein at least one program module including oneof the basic functions “operator instructions”, “automaticinstructions”, “protection instructions”, “instruction generation”,“storage”, “instruction output”, “record messages”, and “lamps” isselected from the program modules.